|
Date in 2010
|
Topic | Readings due | Resources | Assignments due |
|
M 30 Aug
|
Introductions | |||
| M 6 Sep | Intro to patterns and refactoring | RTP ix-67; 340-342; 80-87 DP Chp 1, 2 |
HW1: Find open source Java project(s) and perform the three studied refactorings from RTP: a) Replace Constructors w/ Creation Methods (57) b) Chain Constructors (340) c) Encapsulate Classes w/ Factory (80) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW1.pdf |
|
| M 13 Sep | Case Study: Document Editor | Re-read DP Chp 2 DP Chp 3 DP Chp 5: Strategy |
HW2: Find open source Java project(s) and perform these refactorings from RTP: a) Introduce Polymorphic Creation (88) b) Replace Conditional Logic with Strategy (129) c) Form Template Method (205) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW2.pdf |
|
| M 20 Sep | Case Study: Document Editor | DP Chp 4: Composite | HW3: Find open source Java project(s) and perform these refactorings from RTP: a) Compose Method (123) b) Replace Implicit Tree w/ Composite (178) c) Encapsulate Composite w/ Builder (96) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW3.pdf |
|
| M 27 Sep | Case Study: Document Editor | DP Chp 5: Command | HW4: Find open source Java project(s) and perform these refactorings from RTP: a) Remove accumulation to collecting parameter (313) b) Extract Composite (214) c) Replace one/many distinctions w/Composite (224) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW4.pdf |
|
| M 4 Oct | Midterm Evaluations | DP Chp 4: Adapter | HW5: Find open source Java project(s) and perform these refactorings from RTP: a) Replace Conditional Dispatcher with Command (191) b) Extract Adapter (258) c) Unify Interfaces with Adapter (247) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW5.pdf |
|
| M 11 Oct | BREAK | |||
| M 18 Oct | Case Study: Document Editor | DP Chp 5: State | HW6: Find open source Java project(s) and perform these refactorings from RTP: a) Replace Type Code with Class (286) b) Replace State-Altering Conditionals with State (166) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW6.pdf |
|
| M 25 Oct | Case Study: Document Editor | DP Chp 3: Singleton | HW7: Find open source Java project(s) and perform these refactorings from RTP: a) Introduce Null Object (301) b) Inline Singleton (114) c) Limit Instantiation with Singleton (296) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW7.pdf |
|
| M 1 Nov | Reverse Engineering with Patterns | Reverse Engineering paper | HW8: Find open source Java project(s) and perform these refactorings from RTP: a) Replace Hard-Coded Notifications with Observer (236) Write an experience report and be prepared to present in class; ALSO: read this paper and write a 1000+ word response paper (not summary) to it. Email by NOON [last_first]_HW8.pdf |
|
| M 8 Nov | Case Study: Document Editor | DP Chp 4: Decorator | HW9: Find open source Java project(s) and perform these refactorings from RTP: a) Move Embellishment to Decorator (144) b) Unify Interfaces (343) c) Extract Parameter (346) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW9.pdf |
|
| M 15 Nov | Case Study: Document Editor | Refactoring Legacy Apps | HW10: Find open source Java project(s) and perform these refactorings from RTP: a) Move Creation Knowledge to Factory (68) Write an experience report and be prepared to present in class; ALSO: read this paper and write a 1000+ word response paper (not summary) to it. Email by NOON [last_first]_HW10.pdf |
|
| M 22 Nov | Case Study: Document Editor | Code from Patterns | HW11: Find open source Java project(s) and perform these refactorings from RTP: a) Move Accumulation to Visitor (320) Write an experience report and be prepared to present in class; ALSO: read this paper and write a 1000+ word response paper (not summary) to it. Email by NOON [last_first]_HW11.pdf |
|
| M 29 Nov | Review | HW12: Find open source Java project(s) and perform these refactorings from RTP: a) Replace Implicit Language with Interpreter(269) Write an experience report and be prepared to present in class; Email by NOON [last_first]_HW12.pdf |
||
| M 6 Dec | In class activities | PaperPak for Final | FINAL TAKE-HOME | |
| F 10 Dec | FINALĀ EXAM 7:30 - 10:30 YIKES! | |||